package com.sicpa.system.domain;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import com.sicpa.common.core.domain.BaseEntity;

/**
 * 通知公告表 sys_notice
 *
 * @author wph
 */
public class SysNotice extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 公告ID
     */
    private Long noticeId;

    /**
     * 公告标题
     */
    private String noticeTitle;

    /**
     * 公告类型（1通知 2公告）
     */
    private String noticeType;

    /**
     * 公告内容
     */
    private String noticeContent;

    /**
     * 公告状态（0正常 1关闭）
     */
    private String status;

    /**
     * 被通知人id
     */
    private Long informedPersonId;

    /**
     * 被通知人姓名
     */
    private String informedPersonName;

    /**
     * 是否已读（0：未读，1已读）
     */
    private String isRead;

    /**
     * 临时字段 temp 公告状态
     */
    private Long nread;

    /**
     * 关联项
     */
    private String relatedItem;

    /**
     * 关联项ID
     */
    private Long relatedId;

    /**
     * 临时字段 cread 个人状态
     */
    private Long uread;

    public Long getNoticeId() {
        return noticeId;
    }

    public void setNoticeId(Long noticeId) {
        this.noticeId = noticeId;
    }

    @NotBlank(message = "公告标题不能为空")
    @Size(min = 0, max = 50, message = "公告标题不能超过50个字符")
    public String getNoticeTitle() {
        return noticeTitle;
    }

    public void setNoticeTitle(String noticeTitle) {
        this.noticeTitle = noticeTitle;
    }

    public String getNoticeType() {
        return noticeType;
    }

    public void setNoticeType(String noticeType) {
        this.noticeType = noticeType;
    }

    public String getNoticeContent() {
        return noticeContent;
    }

    public void setNoticeContent(String noticeContent) {
        this.noticeContent = noticeContent;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public Long getInformedPersonId() {
        return informedPersonId;
    }

    public void setInformedPersonId(Long informedPersonId) {
        this.informedPersonId = informedPersonId;
    }

    public String getIsRead() {
        return isRead;
    }

    public void setIsRead(String isRead) {
        this.isRead = isRead;
    }

    public Long getUread() {
        return uread;
    }

    public void setUread(Long uread) {
        this.uread = uread;
    }

    public Long getNread() {
        return nread;
    }

    public void setNread(Long nread) {
        this.nread = nread;
    }

    public String getInformedPersonName() {
        return informedPersonName;
    }

    public void setInformedPersonName(String informedPersonName) {
        this.informedPersonName = informedPersonName;
    }

    public String getRelatedItem() {
        return relatedItem;
    }

    public void setRelatedItem(String relatedItem) {
        this.relatedItem = relatedItem;
    }

    public Long getRelatedId() {
        return relatedId;
    }

    public void setRelatedId(Long relatedId) {
        this.relatedId = relatedId;
    }

    @Override
    public String toString() {
        return "SysNotice{" +
                "noticeId=" + noticeId +
                ", noticeTitle='" + noticeTitle + '\'' +
                ", noticeType='" + noticeType + '\'' +
                ", noticeContent='" + noticeContent + '\'' +
                ", status='" + status + '\'' +
                ", informedPersonId=" + informedPersonId +
                ", informedPersonName='" + informedPersonName + '\'' +
                ", isRead='" + isRead + '\'' +
                ", nread=" + nread +
                ", uread=" + uread +
                '}';
    }
}
